package model;
// Generated 28/06/2012 15:55:16 by Hibernate Tools 3.2.1.GA


import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import memento.UsuarioMemento;

/**
 * Usuario generated by hbm2java
 */
@Entity
@Table(name="Usuario"
    ,catalog="adr_pos"
)
public class Usuario  implements java.io.Serializable {


     private Integer id;
     private String login;
     private String senha;
     private Set<Bug> bugsForQuemCriou = new HashSet<Bug>(0);
     private Set<Bug> bugsForQuemResolveu = new HashSet<Bug>(0);
     private Set<Bug> bugsForQuemConfirmou = new HashSet<Bug>(0);

    public Usuario() {
    }
    
    public void restoreUsuario(UsuarioMemento usuario)
    {
        this.setLogin(usuario.getMemento().getLogin());
        this.setSenha(usuario.getMemento().getSenha());
    }

    public Usuario(String login, String senha) {
       this.login = login;
       this.senha = senha;
    }
   
     @Id @GeneratedValue(strategy=IDENTITY)
    
    @Column(name="id", unique=true, nullable=false)
    public Integer getId() {
        return this.id;
    }
    
    public void setId(Integer id) {
        this.id = id;
    }
    
    @Column(name="login", length=45)
    public String getLogin() {
        return this.login;
    }
    
    public void setLogin(String login) {
        this.login = login;
    }
    
    @Column(name="senha", length=45)
    public String getSenha() {
        return this.senha;
    }
    
    public void setSenha(String senha) {
        this.senha = senha;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="usuarioByQuemCriou")
    public Set<Bug> getBugsForQuemCriou() {
        return this.bugsForQuemCriou;
    }
    
    public void setBugsForQuemCriou(Set<Bug> bugsForQuemCriou) {
        this.bugsForQuemCriou = bugsForQuemCriou;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="usuarioByQuemResolveu")
    public Set<Bug> getBugsForQuemResolveu() {
        return this.bugsForQuemResolveu;
    }
    
    public void setBugsForQuemResolveu(Set<Bug> bugsForQuemResolveu) {
        this.bugsForQuemResolveu = bugsForQuemResolveu;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="usuarioByQuemConfirmou")
    public Set<Bug> getBugsForQuemConfirmou() {
        return this.bugsForQuemConfirmou;
    }
    
    public void setBugsForQuemConfirmou(Set<Bug> bugsForQuemConfirmou) {
        this.bugsForQuemConfirmou = bugsForQuemConfirmou;
    }




}


